-
-
Notifications
You must be signed in to change notification settings - Fork 50
479 mirai lockfile@main #1263
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
479 mirai lockfile@main #1263
Conversation
…engineering/teal into 479_callr_lockfile@main
Signed-off-by: Marcin <[email protected]>
Merge branch '479_callr_lockfile@main' of https://github.com/insightsengineering/teal into 479_callr_lockfile@main # Conflicts: # R/teal_lockfile.R
Co-authored-by: Pawel Rucki <[email protected]> Signed-off-by: Marcin <[email protected]>
Co-authored-by: Pawel Rucki <[email protected]> Signed-off-by: Marcin <[email protected]>
Merge branch '479_callr_lockfile@main' of https://github.com/insightsengineering/teal into 479_callr_lockfile@main # Conflicts: # R/teal_lockfile.R
|
@pawelru this is ready ⭐ |
Signed-off-by: Marcin <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor comments
…engineering/teal into 479_mirai_lockfile@main
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good 👍 it took us a while to get there :)
|
@gogonzo you can do the honors of merging this in : ) great colab team! |
#1276
@pawelru @m7pr
This is a
miraialternative. Package seems to address the biggest issues reported during a research:miraihas a native support ofExtendedTaskmiraiis not being killed whenrunAppis executed (likecallrdoes)miraiby default opens a deamon in parallel R session without a need to handle thefuture::plan.miraihas only one dependency in the whole dependency tree.Disadvantages so far:
we need to pass and setoptions, system vars, working directory and.libPathsmirai don't start with custom .libPaths nor options r-lib/mirai#122How does it work:
initbefore application starts. This prevents to start the process each time when a new shiny session starts. Process is invoked as a promise and eventuallyteal_app.lockwill be createddownload lockfilebutton is hidden by default. If promise is eventually resolved and lockfile is created then download button is shown.teal.renv.lockfileoption. In such caserenv::snapshotwill be skipped and user lockfile will be used in an app.Logs and notifications
Logs are printed for app developer while notifications are presented to the app user:
Lockfile set using option "teal.renv.lockfile" - skipping automatic creation.Lockfile creation started based on { getwd() }.Lockfile {path} containing { n-pkgs } packages created{ with errors or warnings }.Lockfile available to downloadLockfile creation failed.Lockfile creation failed.